
import { IpfsGroup } from "./ipfs-group";
import { Lalm } from "./lalm";

// 如果发送者关闭了，需要定时检查数据接收情况，适时更换
// 如果接收者关闭了，如果感知？（接收者直接关页面，目前感知不到）
// 如果接收到不需要的数据，如何处理（通知对方别发了）
// 由于是异步的，要考虑时序问题

export class LampProxy {
    constructor() {
        this.ipfsGroup = new IpfsGroup();
    }

    // 检查自己的nat类型
    makeProxy(almId, ) {

    }

    async getNatType() {
        const pc = new RTCPeerConnection({ iceServers:[{urls:["stun:stun.l.google.com:19302","stun:global.stun.twilio.com:3478"]}] });
        
        let type
        pc.onicecandidate = (e) => {
            if (!e.candidate) {
                console.log('NAT 类型：', pc.iceConnectionState);
            }
            type = pc.iceConnectionState;
        };

        const offer = await pc.createOffer();
        await pc.setLocalDescription(offer);

        return type;
    }
}